home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
System Booster
/
System Booster.iso
/
Commodities
/
SwitchWindow
/
SwitchWindow.doc
< prev
next >
Wrap
Text File
|
1996-09-26
|
14KB
|
330 lines
===================== SwitchWindow 0.8 main documentation =================
===========================================================================
A simple window tool as a replacement for CBM IHelp to be used with
Kickstart 2.x/3.x, written by Roland 'Gizzy' Mainz, freeware, all rights
reserved.
No guarantee of any kind is made that the program described below in this
document is 100% reliable. You use this material on your own risk.
============================== Misc =======================================
===========================================================================
Because I don't like IHelp (one of us makes everytime a mistake) and
(at first) I need the ZOOM gadget very often, I've programmed a simple
tool called 'SwitchWindow'. It only changes the Window's size via the
ZipWindow() call. Later some other very useful functions were added (see
below).
=========================== Installation ==================================
===========================================================================
Workbench: Drop the 'SwitchWindow' icon in your favorite drawer (like
Sys:WBStartup/ or Sys:Tools/Commodities/). Be sure that the tooltype
DONOTWAIT is set, otherwise the Workbench will call with a requester
(only WBStartup).
CLI/Shell: Drop/Copy the 'SwitchWindow' file in your favorite directory
(like Sys:Tools/Commodities/).
If you like to run the program at startup, get your favorite editor
and add this line to S:user-startup (NOT Startup-Sequence !!):
run >nil: <nil: Sys:Tools/Commodities/SwitchWindow
=============================== Usage =====================================
===========================================================================
SwitchWindow may be controlled through three different ways:
COMMODITIES EXCHANGE
(Show/Hide) (not implemented)
Enable/Disable activate/deactivate the tool
if the tool is deactivated, you couldn't use any
function
Kill quits the tool/end
CLI/Shell
break <process> C quits the tool/end
break <process> E enables the tool in the Commodities Network
break <process> F disables it
REXX (global commands)
'QUIT' quits the tool
'CX_DISABLED=FALSE' enables the tool
'CX_DISABLED=TRUE' disables the tool
('ENABLE'/'DISABLE') FUTURE commands (>V0.85)
REXX (one hotkey)
'<command>KEY=enable' enables one hotkey
('MOVELEFTKEY=enable')
'<command>KEY=disable' disable one hotkey
('MOVELEFTKEY=disable')
'<command>KEY=alt x>' assign the function <command> to the hotkey
"alt x"
('MOVELEFTKEY=alt x')
SEE ALSO
SwitchWindow.rexx.doc
The next two points are only valid if you don't set the QUIET
tooltype/flag:
-If you start a second SwitchWindow, the old one will present you
a requester:
Ignore = put away this ugly requester; do nothing
Disable = disable this task in the commodities list
(like the DISABLE function in COMMODITIES EXCHANGE)
Kill = quit the tool
-If you want to quit the SwitchWindow tool it will bring up
a 'Are you sure ?' requester.
-If a hotkey description is wrong, SwitchWindow will popup a requester
(V0.85):
Retry (V0.85) = Retry to insert the hotkey in the CX network
Cancel = abort
===================== ToolTypes / Shell arguments =========================
===========================================================================
There are a number of command line switches available which also
correspond to tooltype entries to be changed/created by selecting the
appropriate icon and choosing the Workbench menu item `Icons/Information'.
TEMPLATE
CX_PRIORITY/K/N,CX_NAME/K,CX_TITLE/K,CX_DESCR=CX_DESCRIPTION/K,
CX_DISABLED/K,QUIET/K,PORTNAME=RXPORTNAME/K,PORTPRI=RXPORTPRI/K/N,
MOVESTEP/K/N,SIZESTEP/K/N,ZIPWINDOWKEY/K,MAKESMALLKEY/K,MAKEBIGKEY/K,
CLIPTOWINDOWKEY/K,WINDOWTOCLIPKEY/K,MOVEUPKEY/K,MOVEDOWNKEY/K,
MOVELEFTKEY/K,MOVERIGHTKEY/K,SIZEUPKEY/K,SIZEDOWNKEY/K,SIZELEFTKEY/K,
SIZERIGHTKEY/K,PAGEUPKEY/K,PAGEDOWNKEY/K,SIZEPAGEUPKEY/K,
SIZEPAGEDOWNKEY/K,WINDOWTOMOUSEKEY/K,WINDOWTOFRONTKEY/K,
WINDOWTOBACKKEY/K,DEBUGWINDOWKEY/K,IGNORESIZEFLAG/K
CX_PRIORITY/N.... The Cx priority to assign this tool to. You may want to
change this value if there is more than one Commodity
tool running to use the same key sequences as
`SwitchWindow'. The one which has the higher priority
will receive the keystrokes first.
example: 'CX_PRIORITY=0' (DEFAULT)
CX_DISABLED/K.... This is a boolean switch which determines whether
SwitchWindow's hotkeys are disabled on startup or not.
example: 'CX_DISABLED'
CX_NAME/K........ The name string in the Commodities list.
example: 'CX_NAME=Yeeha'
CX_TITLE......... The title string shown in the CX EXCHANGE window.
example: 'CX_TITLE=SwitchWindow'
CX_DESCR=
CX_DESCRIPTION/K. The description string shown in the CX EXCHANGE window.
example: 'CX_DESCRIPTION=Small tool'
PORTNAME=
RXPORTNAME/K..... The REXX port name.
example: 'RXPORTNAME=SWrexx'
PORTPRI=
RXPORTPRI/K/N.... The REXX port priority.
example: 'RXPORTPRI=5'
QUIET/K.......... This is a boolean switch which determines whether
SwitchWindow pops up a requester or not.
SwitchWindow will quit quiet. If another SwitchWindow
was started the 'old' SwitchWindow will be removed.
example: 'QUIET'
ZIPWINDOWKEY/K... 'zip' the window. This function is similar to the
window's 'ZOOM'-gadget.
example: 'ZIPWINDOWKEY=lcommand z' (DEFAULT)
MAKESMALLKEY/K... Makes the window as small as possible.
example: 'MAKESMALLKEY=lcommand tab' (DEFAULT)
MAKEBIGKEY/K..... Makes the window as big as possible.
example: 'MAKEBIGKEY=shift lcommand tab' (DEFAULT)
CLIPTOWINDOWKEY/K Moves the visible part of a draggable screen to the
window's position.
example: 'CLIPTOWINDOWKEY=lcommand w' (DEFAULT)
WINDOWTOCLIPKEY/K Changes the window's position to the visible part of
the screen (screenclip).
example: 'WINDOWTOCLIPKEY=lcommand c' (DEFAULT)
MOVEUPKEY/K
MOVEDOWNKEY/K
MOVERIGHTKEY/K
MOVELEFTKEY/K.... The keys to press to move the window in the specified
direction.
examples:
'MOVEUPKEY=lcommand up' (DEFAULT)
'MOVEDOWNKEY=lcommand down' (DEFAULT)
'MOVERIGHTKEY=lcommand right' (DEFAULT)
'MOVELEFTKEY=lcommand left' (DEFAULT)
SIZEUPKEY/K
SIZEDOWNKEY/K
SIZERIGHTKEY/K
SIZELEFTKEY/K.... Sizes the window in the specified direction.
examples:
'SIZEUPKEY=shift lcommand up' (DEFAULT)
'SIZEDOWNKEY=shift lcommand down' (DEFAULT)
'SIZERIGHTKEY=shift lcommand right' (DEFAULT)
'SIZELEFTKEY=shift lcommand left' (DEFAULT)
PAGEUPKEY/K
PAGEDOWNKEY/K.... Moves the window up (down) in the window's frame height.
examples:'PAGEUPKEY=lcommand numericpad 9' (DEFAULT)
'PAGEDOWNKEY=lcommand numericpad 3' (DEFAULT)
SIZEPAGEUPKEY/K
SIZEPAGEDOWNKEY/K Size the window up (or down) in the current window's
frame height.
examples:
'SIZEPAGEUPKEY=shift lcommand numericpad 9'
(DEFAULT)
'SIZEPAGEDOWNKEY=shift lcommand numericpad 3'
(DEFAULT)
WINDOWTOMOUSEKEY/K Moves the window's left top edge to the mousepointer's
position.
example: 'WINDOWTOMOUSEKEY=lcommand numericpad 0'
(DEFAULT)
WINDOWTOFRONTKEY/K Takes the window in front of all other windows in the
screen.
example: 'WINDOWTOFRONTKEY=lcommand f' (DEFAULT)
WINDOWTOBACKKEY/K The keys to press to send the window in back of all
other windows in the screen.
example: 'WINDOWTOBACKKEY=lcommand b' (DEFAULT)
DEBUGWINDOWKEY/K. This creates a system requester with some informations
about the window (like name, width, height, leftedge,
topedge, ... )
example: 'DEBUGWINDOWKEY=lcommand d' (DEFAULT)
MOVESTEP/N....... The number of pixels in the screen's resolution to move
the window in every direction.
example: 'MOVESTEP=20' (DEFAULT)
SIZESTEP/N....... The number of pixels in the screen's resolution to size
the window in every direction.
example: 'SIZESTEP=20' (DEFAULT)
IGNORESIZEFLAG/K. If this flag is set, every kind of window will be
sized.
NOTE(Shell only): Hotkey strings with blanks MUST be enclosed with "...".
Example: SwitchWindow ZIPWINDOW="shift lcommand z"
NOTE: CLIPTOWINDOW and WINDOWTOCLIP will only be useful for
screens larger than the visible part (here called 'draggable screens')
EXAMPLE (from WB / Icon tooltypes)
DONOTWAIT
CX_PRIORITY=0
CX_DISABLED=TRUE
QUIET
ZIPWINDOWKEY=lcommand z
CLIPTOWINDOWKEY=lcommand w
WINDOWTOCLIPKEY=lcommand c
/* The tool will be loaded with the CX_PRIORITY 0, inactive, no system
requesters,
the ZIPWINDOW function will be run through "lcomand z",
CLIPTOWINDOW through "lcommand w" and
WINDOWTOCLIP through "lcommand c".
The other keys work with their default hotkey strings. */
EXAMPLE (from CLI / Shell)
SwitchWindow CX_PRIORITY=0 CX_DISABLED=TRUE QUIET ZIPWINDOW="lcommand z"
/* The tool will be loaded with the CX_PRIORITY 0, inactive and no
system requesters.
The ZIPWINDOW function will be activated through "lcommand z". */
======================== About the REXX port ============================
=========================================================================
Since the REXX port documentation is moved into a separate file, I'll
write only a few lines here.
The REXX port implementation is experimental (because I din't get the
AREXX book yet), this means that everything may change !!
=========================== KNOWN BUGS ==================================
=========================================================================
-DEBUGWINDOW will hang the tool until the requester is closed.
-If one hotkey string is wrong in any kind, SwitchWindow will
fail without any message (may be removed in V0.85).
-Sometimes the REXX-port will be very slow. Then you may restart the
tool.
-The REXX port is experimental.
-SIZESTEP & MOVESTEP does not check if their arguments are valid.
Be careful.
-Today SwitchWindow is only tested on my private AMIGA
(Amiga 2000C, M68000, 1MB Chip, 8MB Fast, 425MB Nexus HD,
OS V2.04, EXEC V37.132, COMMODITIES 37.27).
============================= TODO ======================================
=========================================================================
-CLIPTOWINDOW/K and WINDOWTOCLIP/K will be enhatched:
CLIPTOWINDOW=AUTO will run the function with every window's
activation.
The visible part of the screen will
automatically be moved to the active window.
WINDOWTOCLIP=AUTO will run the function with every window's
activation.
The window will be moved into the visible
part of the screen.
-DEBUGSCREEN/K will create a requester with some informations about
the Screen.
-If one hotkey string is wrong in any kind, the program will
pop up a requester (V0.85)
-MAKESMALL may size WB windows in another way (V0.85).
-A special icon for SwitchWindow
-A simple, short manual file (autodoc style)
-AmigaGuide file
-Another REXX port implementation
-locale.library support
-German documentation
-Split up the project in three parts:
SwitchWindow.rexx.window (REXX port, window)
SwitchWindow.rexx (REXX port, no window) (this distribution)
SwitchWindow.small (the pure commodity)
=========================== Author's Request ==============================
===========================================================================
By releasing this program I do not place any obligations on you,
feel free to share this program with your friends (and enemies).
If you want to blame me, report any bugs or want the source,
send your letter to:
Roland Mainz
Hohenstaufenstraße 8
D-5164 Nörvenich
GERMANY
But, should you feel the need to make any contributions, send them to:
Fred Fish
Amiga Library Disks
1835 East Belmont Drive
Tempe, Arizona 85284
USA
for his great AMIGA library, and his work all over the years.
The entire SwitchWindow package may be noncommercially redistributed,
provided that the package is always distributed in it's complete form
(including it's documentation). A small copy fee for media costs is okay
but any kind of commercial distribution is strictly forbidden!
Comments and suggestions how to improve this program are generally
appreciated!
Thanks to Matt Dillon for his DICE, and Olaf 'Olsen' Barthel for his
help, ideas and some text clips from his documentations.